package cn.eli.vue.mapper.user;

import cn.eli.vue.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.data.repository.query.Param;

/**
 * 用户接口
 * @author : lzs
 * @Date : 2021-07-13
 * @Description :mapper层接口
 */

@Mapper
public interface UserMapper {
    /**
     * @author : lzs
     * @Description :业务类接口
     */
    /*登录方法 @Param 可以用于简化xml配置 接口名首字母大写*/
    public User Login (@Param("user_loginNumber")String user_loginNumber, @Param("user_password")String user_password);
    /*注册方法 interface类中默认为public abstract型 public可有可无*/
    public int Register(@Param("user_name")String user_name,@Param("user_loginNumber")String user_loginNumber,@Param("user_password")String user_password,
                         @Param("user_sex")int user_sex,@Param("user_avaturl")String user_avaturl);
    /*用户信息修改方法*/
    public int Modify(@Param("user_id")int user_id,@Param("user_name") String user_name,@Param("user_loginNumber") String user_loginNumber, @Param("user_password") String user_password,
                      @Param("user_sex") int user_sex, @Param("user_avaturl") String user_avaturl);

    /**
     * @author : lzs
     * @Description :工具接口
     */

    /*检验用户名是否已存在*/
    public User IsUsernameRepeat(@Param("user_name")String user_name);
    /*检验登录账号是否已存在*/
    public User IsUserLoginNumberRepeat(@Param("user_loginNumber")String user_loginNumber);
    /*从用户名检索用户实体*/
    public User UsernameToUser(@Param("user_name")String user_name);
}
